package com.chuangsi.project.admin.dto.admin.order;

import com.alibaba.excel.annotation.ExcelIgnore;
import com.alibaba.excel.annotation.ExcelProperty;
import com.alibaba.excel.annotation.write.style.ColumnWidth;
import com.alibaba.excel.annotation.write.style.ContentStyle;
import com.alibaba.excel.annotation.write.style.HeadStyle;
import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import org.apache.poi.ss.usermodel.HorizontalAlignment;

/**
 * @author wangshengming
 * @date 2023/3/27
 */
@Data
@HeadStyle(horizontalAlignment = HorizontalAlignment.CENTER)
@ContentStyle(horizontalAlignment = HorizontalAlignment.CENTER)
public class ResOrderExportDto {


    @ApiModelProperty(value = "序号")
    @ColumnWidth(10)
    @ExcelProperty(value = "序号")
    private Integer index;

    @ApiModelProperty(value = "订单编号")
    @ColumnWidth(20)
    @ExcelProperty(value = "订单编号")
    private String orderNo;

    @ApiModelProperty(value = "所属印章")
    @ColumnWidth(23)
    @ExcelProperty(value = "所属印章")
    private String sealName;

    @ApiModelProperty(value = "当前状态")
    @ColumnWidth(15)
    @ExcelProperty(value = "当前状态")
    private String appStatus;

    @ApiModelProperty(value = "销售人员")
    @ColumnWidth(15)
    @ExcelProperty(value = "销售人员")
    private String nickName;

    @ApiModelProperty(value = "车主姓名")
    @ColumnWidth(15)
    @ExcelProperty(value = "车主姓名")
    private String customName;

    @ApiModelProperty(value = "车主联系电话")
    @ColumnWidth(18)
    @ExcelProperty(value = "车主联系电话")
    private String customPhone;

    @ApiModelProperty(value = "客户身份证号")
    @ColumnWidth(20)
    @ExcelProperty(value = "客户身份证号")
    private String customIdCard;

    @ApiModelProperty(value = "车架号")
    @ColumnWidth(20)
    @ExcelProperty(value = "车架号")
    private String vin;

    @ApiModelProperty(value = "发动机号")
    @ColumnWidth(20)
    @ExcelProperty(value = "发动机号")
    private String engineNo;

    @ApiModelProperty(value = "新车发票价格")
    @ColumnWidth(18)
    @ExcelProperty(value = "新车发票价格")
    private String carInvoicePrice;

    @ApiModelProperty(value = "车辆购买日期")
    @ColumnWidth(18)
    @ExcelProperty(value = "车辆购买日期")
    private String buyTime;

    @ApiModelProperty(value = "车型")
    @ColumnWidth(15)
    @ExcelProperty(value = "车型")
    private String model;

    @ApiModelProperty(value = "产品类型")
    @ColumnWidth(15)
    @ExcelProperty(value = "产品类型")
    private String type;

    @ApiModelProperty(value = "合同签署日期")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @ColumnWidth(23)
    @ExcelProperty(value = "合同签署日期")
    private String createTime;

    @ApiModelProperty(value = "经销商")
    @ColumnWidth(30)
    @ExcelProperty(value = "经销商")
    private String deptName;

    @ApiModelProperty(value = "合同金额")
    @ColumnWidth(15)
    @ExcelProperty(value = "合同金额")
    private String money;

    @ApiModelProperty(value = "付款方式")
    @ColumnWidth(15)
    @ExcelProperty(value = "付款方式")
    private String payType;

    @ApiModelProperty(value = "全款金额")
    @ColumnWidth(15)
    @ExcelProperty(value = "全款金额")
    private String quankuanMoney;

    @ApiModelProperty(value = "首付金额")
    @ColumnWidth(15)
    @ExcelProperty(value = "首付金额")
    private String shoufuMoney;

    @ApiModelProperty(value = "分期金额")
    @ColumnWidth(15)
    @ExcelProperty(value = "分期金额")
    private String fenqiMoney;

    @ApiModelProperty(value = "是否自己购买")
    @ColumnWidth(18)
    @ExcelProperty(value = "是否自己购买")
    private String ourselfBuy;

    @ApiModelProperty(value = "订单备注")
    @ColumnWidth(30)
    @ExcelProperty(value = "订单备注")
    private String remark = "";

    @ApiModelProperty(value = "延保期限")
    @ColumnWidth(50)
    @ExcelProperty(value = "延保期限")
    private String extended = "";

    @ApiModelProperty(value = "产品名称")
    @ColumnWidth(30)
    @ExcelProperty(value = "产品名称")
    private String productName;

    @ApiModelProperty(value = "补偿方案")
    @ColumnWidth(30)
    @ExcelProperty(value = "补偿方案")
    private String compensationPlan;

    @ApiModelProperty(value = "自定义字段")
    @ExcelIgnore
    private String selfField;

    @ApiModelProperty(value = "订单id")
    @ExcelIgnore
    private String orderId;

}
